package com.zackeus.sipservice.constant;

import androidx.annotation.StringDef;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * SIP 命令参数
 * @name: Param
 * @author: zz
 * @date: 2022/9/20
 */
public final class Param {

    public static final String PARAM_ACCOUNT_DATA = "accountData";
    public static final String PARAM_CODEC_PRIORITIES = "codecPriorities";
    public static final String PARAM_ACCOUNT_ID = "accountId";
    public static final String PARAM_REG_EXP_TIMEOUT = "regExpTimeout";

    public static final String PARAM_NOTIFICATION_ICON_NAME = "notificationIconName";
    public static final String PARAM_NOTIFICATION_ICON_TYPE = "notificationIconType";

    @Target({ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER})
    @Retention(RetentionPolicy.SOURCE)
    @StringDef({PARAM_ACCOUNT_DATA, PARAM_CODEC_PRIORITIES, PARAM_ACCOUNT_ID, PARAM_REG_EXP_TIMEOUT,
            PARAM_NOTIFICATION_ICON_NAME, PARAM_NOTIFICATION_ICON_TYPE})
    public @interface Unit {}
}
